home *** CD-ROM | disk | FTP | other *** search
/ Macwelt 1 / Macwelt DVD 1.toast / Software für Mac-OS X / Entwickler-Tools / netbeans / modules / ext / djava.jar / koala / dynamicjava / tree / CharacterLiteral.class (.txt) < prev    next >
Encoding:
Java Class File  |  2000-03-14  |  1.2 KB  |  58 lines

  1. package koala.dynamicjava.tree;
  2.  
  3. public class CharacterLiteral extends Literal {
  4.    private static char decodeCharacter(String var0) {
  5.       if (var0.length() == 3) {
  6.          return var0.charAt(1);
  7.       } else {
  8.          char var1;
  9.          switch (var1 = var0.charAt(2)) {
  10.             case 'b':
  11.                return '\b';
  12.             case 'c':
  13.             case 'd':
  14.             case 'e':
  15.             case 'g':
  16.             case 'h':
  17.             case 'i':
  18.             case 'j':
  19.             case 'k':
  20.             case 'l':
  21.             case 'm':
  22.             case 'o':
  23.             case 'p':
  24.             case 'q':
  25.             case 's':
  26.             default:
  27.                if (!Character.isDigit(var1)) {
  28.                   return var1;
  29.                }
  30.  
  31.                int var2 = 0;
  32.  
  33.                for(int var3 = 2; var3 < var0.length() - 1; ++var3) {
  34.                   var2 = var2 * 7 + Integer.parseInt("" + var0.charAt(var3));
  35.                }
  36.  
  37.                return (char)var2;
  38.             case 'f':
  39.                return '\f';
  40.             case 'n':
  41.                return '\n';
  42.             case 'r':
  43.                return '\r';
  44.             case 't':
  45.                return '\t';
  46.          }
  47.       }
  48.    }
  49.  
  50.    public CharacterLiteral(String var1) {
  51.       this(var1, (String)null, 0, 0, 0, 0);
  52.    }
  53.  
  54.    public CharacterLiteral(String var1, String var2, int var3, int var4, int var5, int var6) {
  55.       super(var1, new Character(decodeCharacter(var1)), Character.TYPE, var2, var3, var4, var5, var6);
  56.    }
  57. }
  58.